# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
_luaversions="5.3 5.2 5.1"
_defaultlua="5.3"
pkgname=haserl
pkgver=0.9.35
pkgrel=1
pkgdesc="Html And Shell Embedded Report Language"
url="http://haserl.sourceforge.net/"
arch="all"
license="GPL-2.0"
depends=""
makedepends="automake autoconf"
subpackages="$pkgname-doc"
for _i in $_luaversions; do
	depends="$depends haserl-lua$_i"
	makedepends="$makedepends lua$_i-dev"
	subpackages="$subpackages haserl-lua$_i:split_${_i/./_}"
done
options="suid"
source="https://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver.tar.gz"

_sdir="$srcdir"/$pkgname-$pkgver
prepare() {
	cd "$_sdir"
	for i in $source; do
		case $i in
		*.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;;
		esac
	done
	sed -i -e 's/^        /\t/' src/Makefile.am || return 1
	rm -f src/haserl_lualib.inc

	aclocal && autoconf && autoheader && automake --add-missing || return 1

	for _i in $_luaversions; do
		cp -r "$_sdir" "$srcdir"/build-$_i
	done
}

build() {
	for _i in $_luaversions; do
		cd "$srcdir"/build-$_i
		./configure \
			--build=$CBUILD \
			--host=$CHOST \
			--prefix=/usr \
			--with-lua=lua$_i \
			|| return 1
		make || return 1
	done
}

package() {
	for _i in $_luaversions; do
		cd "$srcdir"/build-$_i
		make DESTDIR="$pkgdir/" install || return 1
		chmod 4111 "$pkgdir"/usr/bin/haserl
		mv "$pkgdir"/usr/bin/haserl "$pkgdir"/usr/bin/haserl-lua$_i
	done
	ln -s haserl-lua$_defaultlua "$pkgdir"/usr/bin/haserl
}

_split() {
	local d= _ver=$1
	pkgdesc="Html And Shell Embedded Report Language with Lua $_ver support"
	replaces="$pkgname"
	depends=
	if [ -f "$pkgdir"/usr/bin/haserl-lua$_ver ]; then
		mkdir -p "$subpkgdir"/usr/bin
		mv "$pkgdir"/usr/bin/haserl-lua$_ver "$subpkgdir"/usr/bin/ || return 1
	fi
}

for _i in $_luaversions; do
	eval "split_${_i/./_}() { _split $_i; }"
done

sha512sums="f0f2fc46540223b4b5369fe13b3020bed5e0578b7ca1ed1688f01678ba5302c876540c0d58dde427f9180915fa38cfffd01f1a4cbbc0fce851789056b3665ab0  haserl-0.9.35.tar.gz"
